package com.prj.ufdm.cloud.ms.core.bpo.code;

import java.util.List;
import com.prj.ufdm.cloud.ms.core.bpo.BaseBPO;
import com.prj.ufdm.cloud.ms.core.model.code.SysCodeItem;

/**
 * <p>
 *  服务接口
 * </p>
 *
 * @author zhengzixiang
 * @since 2019-09-20
 */

public interface SysCodeItemBPO extends BaseBPO<SysCodeItem>{

	/**
	 * 描述: 根据查询总数
	 * @auther 池长鲜
	 * @date 2019-9-23 
	 * @param sysCodeIds 查询参数
	 * @return 查询总数
	 * @throws Exception
	 */
	public Integer doGetTotalBysysCodeIds(String sysCodeIds) throws Exception;
	/**
	 * 根据参数code查询除自己以外被引引用总数
	 * @param codeItem
	 * @return
	 * @throws Exception
	 */
	public Integer doGetNotMeTotal(SysCodeItem codeItem)throws Exception;
	/**
	 * 根据参数类型查询最大排序号
	 * @param codeId 参数类型id
	 * @return
	 * @throws Exception
	 */
	public Integer doGetMaxOrdinalBySysCodeId(String codeId)throws Exception;
	/**
	 * 根据枚举关键字以及是否启用状态查询对应枚举列表
	 * @param code	枚举关键字 （必填）
	 * @param enabledState 是否启用状态（可以为空）
	 * @return
	 * @throws Exception
	 */
	public List<SysCodeItem> doGetEnumListByCodeAndEnabledState(String code,String enabledState )throws Exception;
}
